home *** CD-ROM | disk | FTP | other *** search
/ FM Towns: Free Software Collection 8 / FM Towns Free Software Collection 8.iso / t_os / artemis / artsrc2 / grpcopy.c < prev    next >
C/C++ Source or Header  |  1994-06-01  |  913b  |  42 lines

  1. /*
  2.     grpcopy.c
  3. */
  4.  
  5. #include <stdio.h>
  6.  
  7. #include <ryosuke.h>
  8. #include <usrlib.h>
  9. #include <egb.h>
  10.  
  11. extern    char    *EGB_work;
  12.  
  13. void    grp_copy(int sx1, int sy1, int sxlen, int sylen, int sp,
  14.                  int dx1, int dy1, int dp, int mode )
  15.     {
  16.     int        n, sx2, sy2, dmy, nowpage;
  17.     char    para[18], para2[8];
  18.     nowpage = grp_getWrtpage();
  19.     grp_setWrtpage( sp );
  20.     sx2 = sy1 + sxlen - 1;
  21.     sy2 = sy1 + sylen - 1;
  22.     WORD(para + 0) = 4;
  23.     WORD(para + 2) = sx1;
  24.     WORD(para + 4) = sy1;
  25.     WORD(para + 6) = sx1;
  26.     WORD(para + 8) = sy2;
  27.     WORD(para + 10) = sx2;
  28.     WORD(para + 12) = sy2;
  29.     WORD(para + 14) = sx2;
  30.     WORD(para + 16) = sy1;
  31.     n = 0x80;
  32.     EGB_region( EGB_work, &n, &dmy, &dmy, &dmy, &dmy, &dmy, para );
  33.     para2[0] = dp;
  34.     para2[1] = 0;
  35.     WORD(para2 + 2) = dx1 - sx1;
  36.     WORD(para2 + 4) = dy1 - sy1;
  37.     EGB_copy( EGB_work, 0, para2, NULL );
  38.     EGB_writePage( EGB_work, (int) nowpage );
  39.     }
  40.  
  41. /* end of grpcopy.c */
  42.